package com.example.system.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.system.dto.TenantDto;
import com.example.system.dto.TenantParam;
import com.example.system.entity.Tenant;
import com.example.system.vo.TenantVo;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 *
 * @author 王令
 * @since 2022-10-21
 */
public interface ITenantService extends IService<Tenant> {

    void create(TenantDto tenantDto);

    void update(TenantDto tenantDto);

    void grantAuthority(String tenantId, List<Long> authoritiesId);

    void setUpAdmin(String tenantId, String username);

    Page<TenantVo> listWithPagination(Pageable pageable, TenantParam param);

    List<Long> listAuthorityIdByTenantId(String tenantId);
}
